//GENERA ENTRADAS PARA EL PROBLEMA 4 Y LAS GUARDA EN EL ARCHIVO entrada.txt

#include <iostream>
#include <cstdlib>
#include <fstream>
#include <time.h>
#include <string>
using namespace std;

int main()
{
  srand (time(NULL));
  int n;
  int m;
  int k;
  int v;
  int u;
  int cantidadDePruevas = 20;
  ofstream myfile;

  n = 10;
  k = 70; // COTA RAZONABLE
  u = 1;
  v = 10;
  m = (n*(n-1))/2 - n+1;
  
  for(int i = 1 ; i <= cantidadDePruevas ; i++)
  {
    myfile.open ("entrada" + to_string(i)); // Compilar con g++ -std=c++11
    myfile << n << " " << m << " " << u << " " << v << " " << k << endl;
    int v1 = 1;
    int v2 = 1;
    for (int v1 = 1; v1 < n; v1++)
    {
      for (int v2 = 1; v2 < v1; v2++)
      {
	  /*****Casos Random*****/
	  //int w1 = rand() % (30) + 1;
	  //int w2 = rand() % (30) + 1;
	  //*********************/
	  
	  /*****Peor Caso Backtrack*****/
	  /* En la manera que esta implementado, siempre encuentra una mejor sol*/
	  /* Entonces casi no hace podas*/
	  int w1 = n-v1;
	  int w2 = n-v2;
	  /*****************************/
	  
	  myfile << v1 << " " << v2 <<  " " << w1  << " " << w2 << endl;
      }
    }
    myfile << "0";
    myfile.close();
    n = n + 10;
    m = (n*(n-1))/2 - n +1;
  }
  return 0;
}